#pragma once

#include <string>
#include <string_view>


namespace ceph_mock {
struct object_t {
  std::string name;

  object_t() {}
  // cppcheck-suppress noExplicitConstructor
  object_t(const char *s) : name(s) {}
  // cppcheck-suppress noExplicitConstructor
  object_t(const std::string& s) : name(s) {}
  object_t(std::string&& s) : name(std::move(s)) {}
  object_t(std::string_view s) : name(s) {}

  void swap(object_t& o) {
    name.swap(o.name);
  }
  void clear() {
    name.clear();
  }

//   void encode(ceph::buffer::list &bl) const {
//     using ceph::encode;
//     encode(name, bl);
//   }
//   void decode(ceph::buffer::list::const_iterator &bl) {
//     using ceph::decode;
//     decode(name, bl);
//   }
};
// WRITE_CLASS_ENCODER(object_t)
} /* namespace ceph_mock */
